//
//  MLALEvent+LLAppLog.h
//  live.ly
//
//  Created by bob on 16/7/6.
//  Copyright © 2016年 musical.ly. All rights reserved.
//

#import <MLServerLogger/MLServerLogger.h>


@interface MLALEvent (LLAppLog)

+ (void)tick;
+ (void)tock;
+ (void)tockAt:(NSString *)string;

+ (void)continueAs;

+ (void)connectFb;

+ (void)connectTw;

+ (void)loginMusically;

+ (void)login;

+ (void)findViaContacts;

+ (void)contactSkip;

+ (void)contactFollowAll;

+ (void)contactDone;

+ (void)clickCaption;

+ (void)startLive;

+ (void)clickDiscover;

+ (void)slideDiscover;

+ (void)clickCamera;

+ (void)slideCamera;

+ (void)clickFindFriends;

+ (void)clickPhoneContact;

+ (void)clickOtherProfile:(NSNumber *)user_id;

+ (void)follow:(NSNumber *)user_id;

+ (void)search;

+ (void)clickLiveSessionWithUserID:(NSNumber *)user_id channel:(NSString *)channel scm:(NSString *)scm currentRoom:(NSNumber *)current_room;

+ (void)clickUsername:(NSNumber *)user_id;

+ (void)turnOnPostNotificationWithUserID:(NSNumber *)user_id scm:(NSString *)scm channel:(NSString *)channel;

+ (void)shareFb;

+ (void)shareTw;

+ (void)inviteText;

+ (void)inviteMessager;

+ (void)clickLeaderboard;

+ (void)musicallyProfile:(NSNumber *)user_id;

+ (void)hostCloseLivelyDueTo:(NSString *)reason;

// ---------------------------------------------

+ (void)trafficControlDialogShowed;

+ (void)openedLiveFromPopularStream;

+ (void)openedLiveFromFriendStream;

+ (void)openedCastFromFriendStream;

+ (void)openedLiveWithSCM:(NSString *)scm;

//+ (void)findFriendTapped;

+ (void)followedAtSCM:(NSString *)scm;

+ (void)turnOnPostNotificationAtSCM:(NSString *)scm;

+ (void)profileGotoMusicallyTapped:(BOOL)installed;

+ (void)audienceFollowedHostDuringLive;

+ (void)hostFollowedAudienceDuringLive;

+ (void)audienceFollowedAudienceDuringLive;

+ (void)livePreviewStarted;

+ (void)livePreviewCommited;

+ (void)livePreviewStartedPlaying;

+ (void)pushNotificationReceived:(NSDictionary *)userInfo;

+ (void)pushNotificationTapped:(NSDictionary *)userInfo;

+ (void)pushNotificationLiveSession:(NSString *)url;

+ (void)shareLiveSessionToInstagramClicked;

#pragma mark - find friends by contact

//+ (void)phoneContactsTapped;
+ (void)uploadContacts;

+ (void)followContactFriends;

#pragma mark - appsflyer

+ (void)af_topup:(NSString *)productId price:(NSNumber *)price locale:(NSString *)locale;
+ (void)af_buyGift:(NSString *)giftId andCount:(NSNumber *)count;

#pragma mark - Guesting

+ (void)canGuestCheckWithResult:(NSString *)failReasonOrNil hostUserID:(unsigned long long)hostUserID guestUserID:(unsigned long long)guestUserID guestCID:(NSString *)guestCID;
+ (void)clickStartGuestingWithHostUserID:(unsigned long long)hostUserID guestUserID:(unsigned long long)guestUserID guestCID:(NSString *)guestCID;
+ (void)guestingConnectingWithHostUserID:(unsigned long long)hostUserID guestUserID:(unsigned long long)guestUserID sessionID:(NSString *)sessionID;
+ (void)invitedAsGuestReceviedWithHostUserID:(unsigned long long)hostUserID guestUserID:(unsigned long long)guestUserID sessionID:(NSString *)sessionID autoRejectReason:(NSString *)failReason;
+ (void)guestingGuestClickAccpetWithHostUserID:(unsigned long long)hostUserID guestUserID:(unsigned long long)guestUserID sessionID:(NSString *)sessionID;
+ (void)guestingGuestClickHangupWithHostUserID:(unsigned long long)hostUserID guestUserID:(unsigned long long)guestUserID sessionID:(NSString *)sessionID;
+ (void)guestingVideoShownWithHostUserID:(unsigned long long)hostUserID guestUserID:(unsigned long long)guestUserID sessionID:(NSString *)sessionID;
+ (void)guestingHostClickHangupWithHostUserID:(unsigned long long)hostUserID guestUserID:(unsigned long long)guestUserID sessionID:(NSString *)sessionID;

#pragma mark - Category

+ (void)clickCategoryWithName:(NSString *)name;
+ (void)slideCategory;
+ (void)clickCategory;

#pragma mark - Channel

+ (void)castPlayerEndPlay:(NSNumber *)castID playTime:(NSNumber *)playTime videoLength:(NSNumber *)videoLength videoIndex:(NSNumber *)videoIndex castCountOfChannel:(NSNumber *)castCount channelID:(NSNumber *)channelID channelType:(NSNumber *)channelType castAuthorID:(NSNumber *)userID playType:(NSNumber *)playType;

+ (void)clickMyChannel;
+ (void)clickFriendLive:(NSNumber *)room_id userID:(NSNumber *)user_id;
+ (void)clickFriendNonlive:(NSNumber *)channel_id userID:(NSNumber *)user_id;
+ (void)clickPopularLive:(NSString *)scm roomID:(NSNumber *)room_id userID:(NSNumber *)user_id;
+ (void)clickSendCast;
+ (void)clickWhiteButton:(NSNumber *)record_duration;
+ (void)clickDiscardCast;
+ (void)clickDownloadCast;

#pragma mark - Tab

+ (void)clickChannelsTab;
+ (void)clickExploreTab;
+ (void)clickCreate;
+ (void)clickLiveBroadcast;
+ (void)clickGroupVideoChat;
+ (void)clickMore;
+ (void)broadcastMobileGame;
+ (void)recordMoment;

#pragma mark - discovery

+ (void)clickDiscoveryCategory:(NSNumber *)categoryID;
+ (void)clickCategoryLive:(NSNumber *)room_id userID:(NSNumber *)user_id categoryID:(NSNumber *)categoryID;
+ (void)clickDiscoverySearch;
+ (void)clickDiscoveryFindFriends;

#pragma mark - LiveChat
+ (void)clickLiveChat;
+ (void)clickLiveChatInvite:(unsigned long long)partyID;
+ (void)clickLiveChatPush:(NSString *)url;
+ (void)livechatPeopleChange:(unsigned long long)partyID peopleCount:(NSUInteger)count;

+ (void)clickRedButton;
+ (void)clickToTheWorld;
+ (void)clickGoLive;
+ (void)clickWithFriends;

#pragma mark - reward

+ (void)clickFreeCoinsInRoom;
+ (void)clickCollectFreeCoinsInSetting;
+ (void)clickWatchAds;
+ (void)clickWatchNextRewardAds;

#pragma mark - push notification

+ (void)tokenRegister:(NSNumber *)user_id deviceID:(NSString *)deviceID;
+ (void)tokenUnRegister:(NSNumber *)user_id deviceID:(NSString *)deviceID;

#pragma mark - onboarding

+ (void)slideOnboardingFirstVideoSlide;
+ (void)slideOnboardingSecondVideoSlide;
+ (void)clickSignUp;
+ (void)clickLogIn;
+ (void)clickSwitchAccount;
+ (void)clickSignupWithPhone;
+ (void)clickSignupWithMusically;
+ (void)clickSignupWithFacebook;
+ (void)clickCreateAccount;
+ (void)clickPhoto;
+ (void)clickFullName;
+ (void)clickSetUpContinue;
+ (void)clickSelfieUpload;
+ (void)clickSelfieSkip;

+ (void)clickConnectToFb;
+ (void)clickFbSkip;
+ (void)clickFbFollowAll;
+ (void)clickFbDone;

#pragma mark - open&close

+ (void)openApp:(BOOL)firstLaunch;
+ (void)closeApp;
+ (void)pushReceived:(NSString *)identifier;

#pragma mark - face

+ (void)selectedFaceWithID:(NSString *)faceID;
+ (void)startRecordingWithFace:(NSString *)faceID;
+ (void)endRecordingWithFace;

#pragma mark - gift

+ (void)clickSendGift:(NSNumber *)giftID scm:(NSString *)scm;
+ (void)verifyDigitsResult:(BOOL)success;
+ (void)clickProduction:(NSString *)productionID;
+ (void)popupVerify;

#pragma mark - guesting

+ (void)clickSendGuestingRequest;
+ (void)clickAcceptGuestingRequest;
+ (void)clickGuestingSuggest;
+ (void)accept_guest_success;

#pragma mark - live

+ (void)createObsSuccess;
+ (void)watchLiveWithTag:(NSString *)tag type:(NSString *)type duration:(NSNumber *)duration roomID:(NSNumber *)roomID originalRoomId:(NSNumber *)originalRoomID scm:(NSString *)scm;

@end
